package com.example.dto;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 借阅记录响应DTO
 * 
 * @author HP
 * @description 借阅记录信息响应数据
 * @createDate 2025-08-27
 */
@Data
public class BorrowResponseDTO implements Serializable {

    /**
     * 借阅记录ID
     */
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 用户名
     */
    private String username;

    /**
     * 用户真实姓名
     */
    private String realName;

    /**
     * 用户邮箱
     */
    private String email;

    /**
     * 图书副本ID
     */
    private Long bookCopyId;

    /**
     * 图书ID
     */
    private Long bookId;

    /**
     * 图书标题
     */
    private String bookTitle;

    /**
     * 图书作者
     */
    private String bookAuthor;

    /**
     * 图书ISBN
     */
    private String bookIsbn;

    /**
     * 借阅时间
     */
    private Date borrowTime;

    /**
     * 应归还时间
     */
    private Date dueReturnTime;

    /**
     * 实际归还时间
     */
    private Date actualReturnTime;

    /**
     * 借阅状态 0:借阅中, 1:已归还, 2:逾期未还
     */
    private Integer borrowStatus;

    /**
     * 借阅状态文本
     */
    private String borrowStatusText;

    /**
     * 是否逾期
     */
    private Boolean overdue;

    /**
     * 逾期天数
     */
    private Integer overdueDays;

    /**
     * 罚款金额
     */
    private Double fineAmount;

    /**
     * 图书状态（归还时）
     */
    private Integer bookCondition;

    /**
     * 图书状态文本
     */
    private String bookConditionText;

    /**
     * 备注
     */
    private String remark;

    private static final long serialVersionUID = 1L;
}